Package-level declarations

Types

Link copied to clipboard
data class BotConfiguration(var apiHost: String = "api.telegram.org", var inputListener: InputListener = InputListenerMapImpl(), var classManager: ClassManager = ClassManagerImpl(), var inputAutoRemoval: Boolean = true, rateLimiter: RateLimiterConfiguration = RateLimiterConfiguration(), httpClient: HttpConfiguration = HttpConfiguration(), logging: LoggingConfiguration = LoggingConfiguration(), updatesListener: UpdatesListenerConfiguration = UpdatesListenerConfiguration(), context: ContextConfiguration = ContextConfiguration(), commandParsing: CommandParsingConfiguration = CommandParsingConfiguration())

The class containing the bot configuration.

Link copied to clipboard
data class CommandParsingConfiguration(var commandDelimiter: Char = '?', var parametersDelimiter: Char = '&', var parameterValueDelimiter: Char = '=', var restrictSpacesInCommands: Boolean = false)

Class for configuration of command parsing parameters

Link copied to clipboard
data class ContextConfiguration(var userData: UserData = UserDataMapImpl(), var chatData: ChatData = ChatDataMapImpl())

A class containing configurations related to bot context.

Link copied to clipboard
data class HttpConfiguration(var requestTimeoutMillis: Long = HttpTimeout.INFINITE_TIMEOUT_MS, var connectTimeoutMillis: Long = HttpTimeout.INFINITE_TIMEOUT_MS, var socketTimeoutMillis: Long = HttpTimeout.INFINITE_TIMEOUT_MS, var maxRequestRetry: Int = 3, var retryStrategy: RetryStrategy? = null, var retryDelay: Long = 3000, var proxy: ProxyConfig? = null, var additionalHeaders: Map<String, Any?>? = null)

A class containing the configuration for the bot http client.

Link copied to clipboard
data class LoggingConfiguration(var botLogLevel: LogLvl = LogLvl.INFO, var httpLogLevel: HttpLogLevel = HttpLogLevel.NONE)

The class containing the logging configuration.

Link copied to clipboard
data class RateLimiterConfiguration(var limits: RateLimits = RateLimits(), var mechanism: RateLimitMechanism = TokenBucketLimiterImpl())
Link copied to clipboard
data class RateLimits(var period: Long = 0, var rate: Long = 0)

A class containing the configuration of constraints for incoming requests.

Link copied to clipboard
data class UpdatesListenerConfiguration(var dispatcher: CoroutineDispatcher = Dispatchers.Default, var processingDispatcher: CoroutineDispatcher = PROCESSING_DISPATCHER, var pullingDelay: Long = 0, var updatesPollingTimeout: Int = 20)

A class containing configurations related to updates pulling.